Secure communication of information afforded by encryption techniques is desirable in the field of wireless communication devices, such as pagers, cellular telephones, etc. In these environments, there is a need to minimize the amount of information transmitted to control costs and profitability of systems. When the data to be transmitted is encrypted, it is still desirable to minimize the overall amount of data actually transmitted.
Elliptic curve (EC) cryptography has become particularly useful in the field of wireless communication because it is more efficient both in terms of bandwidth and computation time than other public key industry encryption standards, such as RSA. An EC processor includes a finite field arithmetic logic unit (ALU) which performs the lowest level finite field arithmetic operations upon an EC point.
One particular operation to be performed by a finite field ALU is a finite field inverse operation. In EC cryptosystems, the size of the finite field is represented by as many as 160 bits or more. Therefore, computing the inverse of a field element is a costly task to perform, in terms of software or hardware allocation. There are several known arithmetic processes for computing a finite field inverse. One is the Extended Euclidean Algorithm. Others involve the repeated use of finite field squaring and multiplying operations.
The present invention is directed to a finite field inverse circuit and method which minimizes the number of finite field arithmetic operations.